{
 "cells": [
  {
   "metadata": {
    "collapsed": true
   },
   "cell_type": "markdown",
   "source": "# 神经网络",
   "id": "d5287af41958f7f4"
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "## 阶跃函数的实现",
   "id": "1eb4072a23ebcaf0"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-09-25T09:43:15.843653Z",
     "start_time": "2025-09-25T09:43:15.224356Z"
    }
   },
   "cell_type": "code",
   "source": [
    "import numpy as np\n",
    "import matplotlib.pylab as plt"
   ],
   "id": "8b95ae46ec8a8ae2",
   "outputs": [],
   "execution_count": 1
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-09-25T11:06:27.212825Z",
     "start_time": "2025-09-25T11:06:27.162665Z"
    }
   },
   "cell_type": "code",
   "source": [
    "def step_function(x: np.ndarray) -> np.ndarray:\n",
    "    return np.array(x > 0, dtype=int)\n",
    "\n",
    "x = np.arange(-5.0, 5.0, 0.1)\n",
    "y = step_function(x)\n",
    "plt.plot(x, y)\n",
    "plt.ylim(-0.1, 1.1) # 指定y轴的范围\n",
    "plt.show()"
   ],
   "id": "fb052130c329f5e6",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 8
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "## sigmoid函数的实现",
   "id": "bc640161511ca434"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-09-25T11:12:19.881584Z",
     "start_time": "2025-09-25T11:12:19.837710Z"
    }
   },
   "cell_type": "code",
   "source": [
    "def sigmoid(x: np.ndarray) -> np.ndarray:\n",
    "    return 1 / (1 + np.exp(-x))\n",
    "\n",
    "x = np.arange(-5.0, 5.0, 0.1)\n",
    "y = sigmoid(x)\n",
    "plt.plot(x, y)\n",
    "plt.ylim(-0.1, 1.1) # 指定y轴的范围\n",
    "plt.show()"
   ],
   "id": "62640e43754e8d71",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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AACArQgjAADAVoQRAABgK8IIAACwFWEEAADYijACAABsRRgBAAC2IowAAABbEUYAAICtCCMAAMBWhBEAAGArwggAALAVYQQAANiKMAIAAGxFGAEAALYijAAAAFsRRgAAgK0IIwAAwFaEEQAAYCvCCAAAsBVhBAAA2IowAgAAbBUoD+ByucxjcXGx3aUAAIB6Ovq5ffRz3KPDSElJiXlMSUmxuxQAAHAKn+MxMTEn/Lqf6+fiihtwOp3au3evoqKi5OfnJ19nJU0rmGVnZys6Otrucrwav+vmw++6+fC7bj6+/rt2uVwmiCQlJcnf39+zR0asHyA5OdnuMtyO9RfbF/9y24HfdfPhd918+F03H1/+XcecZETkKBpYAQCArQgjAADAVoQRDxQSEqJp06aZRzQtftfNh9918+F33Xz4XdePRzSwAgAA78XICAAAsBVhBAAA2IowAgAAbEUYAQAAtiKMeInKykr169fPrFC7bt06u8vxOrt27dLNN9+sDh06KCwsTJ06dTId8lVVVXaX5hVmzZql1NRUhYaGasiQIVq5cqXdJXmlGTNmaNCgQWY16/j4eI0aNUpbt261uyyv9+ijj5r35rvuusvuUtwWYcRL3HPPPWa5XTSN9PR0c1uCv//979q0aZOefvppzZ49W5MnT7a7NI83f/58TZgwwYS7NWvWKC0tTSNGjFBeXp7dpXmdL774QnfccYe++eYbLV68WNXV1broootUVlZmd2le67vvvjPvG3379rW7FPdmTe2FZ1u4cKGre/furk2bNlnTtF1r1661uySf8Pjjj7s6dOhgdxkeb/Dgwa477rij9tjhcLiSkpJcM2bMsLUuX5CXl2feM7744gu7S/FKJSUlri5durgWL17sOuecc1zjx4+3uyS3xciIh8vNzdWtt96q119/XeHh4XaX41OKiooUGxtrdxkezbrMtXr1ag0fPrzOvais4xUrVtham6/8Hbbw97hpWKNQl112WZ2/3/DgG+Xh+Kz16m688UbddtttGjhwoOlrQPPIyMjQs88+qyeeeMLuUjxaQUGBHA6HEhIS6py3jq1LY2g61mVHq4fhjDPOUO/eve0ux+vMmzfPXHa0LtPg5zEy4oYmTpxomp1Otllv1NaHoXVr5kmTJtldstf/ro+1Z88eXXzxxbrmmmvMqBTgqf9r37hxo/nQROPKzs7W+PHj9e9//9s0ZePnsRy8G8rPz9f+/ftP+pyOHTvqN7/5jT788EPzgXmU9b/MgIAAXX/99XrttdeaoVrf+F0HBweb/b179+rcc8/V0KFD9eqrr5pLCvhll2msy4tvvfWWmdlx1NixY3Xw4EG9//77ttbnrf74xz+a3+2XX35pZoihcb333nv61a9+Zd6Lj31vtt6rrfcMa/bjsV8DYcSjZWVlqbi4uPbY+qC0ZiFYb+zW9Mjk5GRb6/M21ojIeeedpwEDBuhf//oXbyaNxPq7OnjwYDPSd/TyQbt27cwHpjVyhcZjvd3feeedevfdd7Vs2TJ16dLF7pK8kjVi/cMPP9Q5N27cOHXv3l333nsvl8WOg54RD2a9YR8rMjLSPFprYBBEGj+IWCMi7du3N30i1ojKUYmJibbW5umsab3WSIjV92SFkpkzZ5qpptabNxr/0szcuXPNqIi11khOTo45HxMTY9bPQeOwfrc/DhwRERFq1aoVQeQECCNAPVhrMlhNq9b246DH4OIvM3r0aBPupk6daj4crcX7Fi1a9JOmVvxyL7zwgnm0gvWx/vGPf5hmeMAuXKYBAAC2ovsOAADYijACAABsRRgBAAC2IowAAABbEUYAAICtCCMAAMBWhBEAAGArwggAALAVYQQAANiKMAIAAGxFGAEAALYijAAAANnp/wPg0T5dy1FHcgAAAABJRU5ErkJggg=="
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 9
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-09-25T11:22:07.409007Z",
     "start_time": "2025-09-25T11:22:07.353960Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 对比step函数和sigmoid函数\n",
    "x = np.arange(-5.0, 5.0, 0.1)\n",
    "y1 = step_function(x)\n",
    "y2 = sigmoid(x)\n",
    "plt.plot(x, y1, label='step_function')\n",
    "plt.plot(x, y2, label='sigmoid',linestyle='--')\n",
    "plt.ylim(-0.1, 1.1) # 指定y轴的范围\n",
    "plt.legend()\n",
    "plt.show()"
   ],
   "id": "a73e9ce2d28218fa",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 10
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-09-25T11:44:13.034302Z",
     "start_time": "2025-09-25T11:44:12.988533Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# ReLU函数的实现: 直接输出该值；在输入小于等于0时，输出0\n",
    "def relu(x):\n",
    "    return np.maximum(0, x)\n",
    "\n",
    "x = np.arange(-5.0, 5.0, 0.1)\n",
    "y = relu(x)\n",
    "plt.plot(x, y)\n",
    "plt.ylim(-1, 5) # 指定y轴的范围\n",
    "plt.show()"
   ],
   "id": "51d46ecd035f3e25",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 11
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "## 多维数组的运算",
   "id": "76d8362d7fb98fbd"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-09-25T11:48:58.296269Z",
     "start_time": "2025-09-25T11:48:58.288828Z"
    }
   },
   "cell_type": "code",
   "source": [
    "A= np.array([1,2,3,4])\n",
    "print(A)\n",
    "print(A.shape) # (4,)\n",
    "print(A.ndim)  # 1"
   ],
   "id": "cbe908024af4ee94",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[1 2 3 4]\n",
      "(4,)\n",
      "1\n"
     ]
    }
   ],
   "execution_count": 12
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-09-25T11:51:14.655452Z",
     "start_time": "2025-09-25T11:51:14.649083Z"
    }
   },
   "cell_type": "code",
   "source": [
    "B= np.array([[1,2,3,4],[1,2,3,4]])\n",
    "print(B.shape)\n",
    "print(B.ndim)"
   ],
   "id": "68154eb646949648",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(1, 2, 4)\n",
      "3\n"
     ]
    }
   ],
   "execution_count": 16
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-09-25T12:07:54.616269Z",
     "start_time": "2025-09-25T12:07:54.611087Z"
    }
   },
   "cell_type": "code",
   "source": [
    "a = np.array([[1,2],[3,4]])\n",
    "b = np.array([[5,6],[7,8]])\n",
    "\n",
    "# np.dot(a,b)\n",
    "print(np.dot(a,b))"
   ],
   "id": "1f3e2ceeaf45845b",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[19 22]\n",
      " [43 50]]\n"
     ]
    }
   ],
   "execution_count": 17
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
